% 初始化FIS  
fis = newfis('RFNN');

%inName=['dg','do','sig','sio'];
%outName=['v','w'];
for i=1:4
    % 添加输入变量dg，范围[0, 10]
    switch i
        case 1
            fis = addInput(fis, [0 10], 'dg');
            %'near'的高斯型隶属函数
            fis = addMF(fis, 'dg', 'gaussmf', [0 2.95]); % 第一个参数是均值，第二个参数是标准差
            fis = setMF(fis, 'dg', 1, 'Name', 'near');
            %'far'的高斯型隶属函数
            fis = addMF(fis, 'dg', 'gaussmf', [10 2.95]); % 第一个参数是均值，第二个参数是标准差
            fis = setMF(fis, 'dg', 2, 'Name', 'far');
        case 2
            fis = addInput(fis, [0 2], 'do');
            %'near'的高斯型隶属函数
            fis = addMF(fis, 'do', 'gaussmf', [0 0.58]); % 第一个参数是均值，第二个参数是标准差
            fis = setMF(fis, 'do', 1, 'Name', 'near');
            %'far'的高斯型隶属函数
            fis = addMF(fis, 'do', 'gaussmf', [10 0.58]); % 第一个参数是均值，第二个参数是标准差
            fis = setMF(fis, 'do', 2, 'Name', 'far');
        case 3
            fis = addInput(fis, [-pi/2 pi/2], 'sig');
            %'right'的高斯型隶属函数
            fis = addMF(fis, 'sig', 'gaussmf', [-pi/2 0.93]); % 第一个参数是均值，第二个参数是标准差
            fis = setMF(fis, 'sig', 1, 'Name', 'right');
            %'left'的高斯型隶属函数
            fis = addMF(fis, 'sig', 'gaussmf', [pi/2 0.93]); % 第一个参数是均值，第二个参数是标准差
            fis = setMF(fis, 'sig', 2, 'Name', 'left');
        case 4
            fis = addInput(fis, [-pi/2 pi/2], 'sio');
            %'right'的高斯型隶属函数
            fis = addMF(fis, 'sio', 'gaussmf', [-pi/2 0.88]); % 第一个参数是均值，第二个参数是标准差
            fis = setMF(fis, 'sio', 1, 'Name', 'right');
            %'left'的高斯型隶属函数
            fis = addMF(fis, 'sio', 'gaussmf', [pi/2 0.88]); % 第一个参数是均值，第二个参数是标准差
            fis = setMF(fis, 'sio', 2, 'Name', 'left');
    end
    
end
